namespace Calais
{
  [CalaisType("http://s.opencalais.com/1/type/cat/DocCat")]
  [CalaisTypeDescription("The type of an extracted content category/topic")]
  public class CalaisDocCat : ICalaisDocCat
  {
	public string Category { get; set; }
	public string CategoryName { get; set; }
	public string ClassifierName { get; set; }
	public ICalaisDocInfo DocId { get; set; }
	public string Score { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/sys/DocInfo")]
  [CalaisTypeDescription("The type of the node that includes the tentire transaction: paramsXML and the submitted content")]
  public class CalaisDocInfo : ICalaisDocInfo
  {
	public string AllowDistribution { get; set; }
	public string AllowSearch { get; set; }
	public string CalaisRequestId { get; set; }
	public string CalculateRelevanceScore { get; set; }
	public string Caller { get; set; }
	public string DiscardMetadata { get; set; }
	public string DocDate { get; set; }
	public string DocTitle { get; set; }
	public string Document { get; set; }
	public string EnableMetadataType { get; set; }
	public string ExternalId { get; set; }
	public string ExternalMetadata { get; set; }
	public string Id { get; set; }
	public string OutputFormat { get; set; }
	public string ReltagBaseUrl { get; set; }
	public string Submitter { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Anniversary")]
  [CalaisTypeDescription("Describes an entity that is a reference to an anniversary")]
  public class CalaisAnniversary : CalaisCustomTypeBase, ICalaisAnniversary
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/City")]
  [CalaisTypeDescription("Describes an entity that is a city, village or settlement")]
  public class CalaisCity : CalaisCustomTypeBase, ICalaisCity
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Company")]
  [CalaisTypeDescription("The type of an extracted company name")]
  public class CalaisCompany : CalaisCustomTypeBase, ICalaisCompany
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
	public string Nationality
	{
		get
		{
			 return base.Nationality; 
		}

		set
		{
			 base.Nationality = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Continent")]
  [CalaisTypeDescription("The type of an extracted continent name")]
  public class CalaisContinent : CalaisCustomTypeBase, ICalaisContinent
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Country")]
  [CalaisTypeDescription("The type of an extracted country name")]
  public class CalaisCountry : CalaisCustomTypeBase, ICalaisCountry
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Currency")]
  [CalaisTypeDescription("The type of an extracted currency")]
  public class CalaisCurrency : CalaisCustomTypeBase, ICalaisCurrency
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/EmailAddress")]
  [CalaisTypeDescription("The type of an extracted email address")]
  public class CalaisEmailAddress : CalaisCustomTypeBase, ICalaisEmailAddress
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/EntertainmentAwardEvent")]
  [CalaisTypeDescription("The type of an extracted entertainment-related event or award")]
  public class CalaisEntertainmentAwardEvent : CalaisCustomTypeBase, ICalaisEntertainmentAwardEvent
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Facility")]
  [CalaisTypeDescription("The type of an extracted facility - a man-made physical entity")]
  public class CalaisFacility : CalaisCustomTypeBase, ICalaisFacility
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/FaxNumber")]
  [CalaisTypeDescription("The type of an extracted fax number")]
  public class CalaisFaxNumber : CalaisCustomTypeBase, ICalaisFaxNumber
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Holiday")]
  [CalaisTypeDescription("The type of an extracted holiday")]
  public class CalaisHolIday : CalaisCustomTypeBase, ICalaisHolIday
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/IndustryTerm")]
  [CalaisTypeDescription("The type of an extracted industry term")]
  public class CalaisIndustryTerm : CalaisCustomTypeBase, ICalaisIndustryTerm
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/MarketIndex")]
  [CalaisTypeDescription("The type of an extracted market index")]
  public class CalaisMarketIndex : CalaisCustomTypeBase, ICalaisMarketIndex
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/MedicalCondition")]
  [CalaisTypeDescription("The type of an extracted medical condition")]
  public class CalaisMedicalCondition : CalaisCustomTypeBase, ICalaisMedicalCondition
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/MedicalTreatment")]
  [CalaisTypeDescription("The type of an extracted medical treatment")]
  public class CalaisMedicalTreatment : CalaisCustomTypeBase, ICalaisMedicalTreatment
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Movie")]
  [CalaisTypeDescription("The type of an extracted movie name")]
  public class CalaisMovie : CalaisCustomTypeBase, ICalaisMovie
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/MusicAlbum")]
  [CalaisTypeDescription("The type of an extracted music album name")]
  public class CalaisMusicAlbum : CalaisCustomTypeBase, ICalaisMusicAlbum
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/MusicGroup")]
  [CalaisTypeDescription("The type of an extracted music group name")]
  public class CalaisMusicGroup : CalaisCustomTypeBase, ICalaisMusicGroup
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/NaturalFeature")]
  [CalaisTypeDescription("The type of an extracted natural feature")]
  public class CalaisNaturalFeature : CalaisCustomTypeBase, ICalaisNaturalFeature
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/OperatingSystem")]
  [CalaisTypeDescription("The type of an extracted operating system name")]
  public class CalaisOperatingSystem : CalaisCustomTypeBase, ICalaisOperatingSystem
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Organization")]
  [CalaisTypeDescription("The type of an extracted organization name")]
  public class CalaisOrganization : CalaisCustomTypeBase, ICalaisOrganization
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
	public string Nationality
	{
		get
		{
			 return base.Nationality; 
		}

		set
		{
			 base.Nationality = value; 
		}
	}
	public string OrganizationType
	{
		get
		{
			 return base.OrganizationType; 
		}

		set
		{
			 base.OrganizationType = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Person")]
  [CalaisTypeDescription("The type of an extracted person name")]
  public class CalaisPerson : CalaisCustomTypeBase, ICalaisPerson
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
	public string Nationality
	{
		get
		{
			 return base.Nationality; 
		}

		set
		{
			 base.Nationality = value; 
		}
	}
	public string PersonType
	{
		get
		{
			 return base.PersonType; 
		}

		set
		{
			 base.PersonType = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/PhoneNumber")]
  [CalaisTypeDescription("The type of an extracted phone number")]
  public class CalaisPhoneNumber : CalaisCustomTypeBase, ICalaisPhoneNumber
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Position")]
  [CalaisTypeDescription("The type of an extracted person's position or job title")]
  public class CalaisPosition : CalaisCustomTypeBase, ICalaisPosition
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Product")]
  [CalaisTypeDescription("The type of an extracted product name (drug, car models, electronics, etc.)")]
  public class CalaisProduct : CalaisCustomTypeBase, ICalaisProduct
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
	public string ProductType
	{
		get
		{
			 return base.ProductType; 
		}

		set
		{
			 base.ProductType = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/ProgrammingLanguage")]
  [CalaisTypeDescription("The type of an extracted programming language")]
  public class CalaisProgrammingLanguage : CalaisCustomTypeBase, ICalaisProgrammingLanguage
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/ProvinceOrState")]
  [CalaisTypeDescription("The type of an extracted province, state or county name")]
  public class CalaisProvinceOrState : CalaisCustomTypeBase, ICalaisProvinceOrState
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/PublishedMedium")]
  [CalaisTypeDescription("The type of an extracted published medium - newspapers, magazines, etc.")]
  public class CalaisPublishedMedium : CalaisCustomTypeBase, ICalaisPublishedMedium
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/RadioProgram")]
  [CalaisTypeDescription("The type of an extracted radio program")]
  public class CalaisRadioProgram : CalaisCustomTypeBase, ICalaisRadioProgram
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/RadioStation")]
  [CalaisTypeDescription("The type of an extracted radio station")]
  public class CalaisRadioStation : CalaisCustomTypeBase, ICalaisRadioStation
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Region")]
  [CalaisTypeDescription("The type of an extracted region")]
  public class CalaisRegion : CalaisCustomTypeBase, ICalaisRegion
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/SportsEvent")]
  [CalaisTypeDescription("The type of an extracted sports event")]
  public class CalaisSportsEvent : CalaisCustomTypeBase, ICalaisSportsEvent
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/SportsGame")]
  [CalaisTypeDescription("The type of an extracted sports game")]
  public class CalaisSportsGame : CalaisCustomTypeBase, ICalaisSportsGame
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/SportsLeague")]
  [CalaisTypeDescription("The type of an extracted sports league")]
  public class CalaisSportsLeague : CalaisCustomTypeBase, ICalaisSportsLeague
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/TVShow")]
  [CalaisTypeDescription("The type of an extracted TV show")]
  public class CalaisTVShow : CalaisCustomTypeBase, ICalaisTVShow
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/TVStation")]
  [CalaisTypeDescription("The type of an extracted TV station")]
  public class CalaisTVStation : CalaisCustomTypeBase, ICalaisTVStation
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/Technology")]
  [CalaisTypeDescription("The type of an extracted technology name")]
  public class CalaisTechnology : CalaisCustomTypeBase, ICalaisTechnology
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/e/URL")]
  [CalaisTypeDescription("The type of an extracted URL mention")]
  public class CalaisURL : CalaisCustomTypeBase, ICalaisURL
  {
	public string Name
	{
		get
		{
			 return base.Name; 
		}

		set
		{
			 base.Name = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Acquisition")]
  [CalaisTypeDescription("The type of an extracted acquisition relation between multiple companies")]
  public class CalaisAcquisition : CalaisCustomTypeBase, ICalaisAcquisition
  {
	public ICalaisCompany Company_Acquirer
	{
		get
		{
			 return base.Company_Acquirer; 
		}

		set
		{
			 base.Company_Acquirer = value; 
		}
	}
	public ICalaisCompany Company_Beingacquired
	{
		get
		{
			 return base.Company_Beingacquired; 
		}

		set
		{
			 base.Company_Beingacquired = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Alliance")]
  [CalaisTypeDescription("The type of an extracted alliance relation between multiple companies")]
  public class CalaisAlliance : CalaisCustomTypeBase, ICalaisAlliance
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/AnalystEarningsEstimate")]
  [CalaisTypeDescription("The type of an extracted analyst earnings estimate mentioned - estimates given by exgternal analysts regarding the forecasted earnings of companies")]
  public class CalaisAnalystEarningsEstimate : CalaisCustomTypeBase, ICalaisAnalystEarningsEstimate
  {
	public ICalaisCompany Company_Rated
	{
		get
		{
			 return base.Company_Rated; 
		}

		set
		{
			 base.Company_Rated = value; 
		}
	}
	public ICalaisCompany Company_Source
	{
		get
		{
			 return base.Company_Source; 
		}

		set
		{
			 base.Company_Source = value; 
		}
	}
	public string FinancialMetric
	{
		get
		{
			 return base.FinancialMetric; 
		}

		set
		{
			 base.FinancialMetric = value; 
		}
	}
	public ICalaisPerson Person_Source
	{
		get
		{
			 return base.Person_Source; 
		}

		set
		{
			 base.Person_Source = value; 
		}
	}
	public string Quarter
	{
		get
		{
			 return base.Quarter; 
		}

		set
		{
			 base.Quarter = value; 
		}
	}
	public string Year
	{
		get
		{
			 return base.Year; 
		}

		set
		{
			 base.Year = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/AnalystRecommendation")]
  [CalaisTypeDescription("The type of an extracted stock recommendation mentioned - recommendation given by external analysts regarding the company's equity")]
  public class CalaisAnalystRecommendation : CalaisCustomTypeBase, ICalaisAnalystRecommendation
  {
	public ICalaisCompany Company_Rated
	{
		get
		{
			 return base.Company_Rated; 
		}

		set
		{
			 base.Company_Rated = value; 
		}
	}
	public ICalaisCompany Company_Source
	{
		get
		{
			 return base.Company_Source; 
		}

		set
		{
			 base.Company_Source = value; 
		}
	}
	public string FinancialTrend
	{
		get
		{
			 return base.FinancialTrend; 
		}

		set
		{
			 base.FinancialTrend = value; 
		}
	}
	public ICalaisPerson Person_Source
	{
		get
		{
			 return base.Person_Source; 
		}

		set
		{
			 base.Person_Source = value; 
		}
	}
	public string Price_New
	{
		get
		{
			 return base.Price_New; 
		}

		set
		{
			 base.Price_New = value; 
		}
	}
	public string Price_Old
	{
		get
		{
			 return base.Price_Old; 
		}

		set
		{
			 base.Price_Old = value; 
		}
	}
	public string Rank_New
	{
		get
		{
			 return base.Rank_New; 
		}

		set
		{
			 base.Rank_New = value; 
		}
	}
	public string Rank_Old
	{
		get
		{
			 return base.Rank_Old; 
		}

		set
		{
			 base.Rank_Old = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Arrest")]
  [CalaisTypeDescription("The type of an extracted arrest event")]
  public class CalaisArrest : CalaisCustomTypeBase, ICalaisArrest
  {
	public string Charge
	{
		get
		{
			 return base.Charge; 
		}

		set
		{
			 base.Charge = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string OtherCharges
	{
		get
		{
			 return base.OtherCharges; 
		}

		set
		{
			 base.OtherCharges = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Bankruptcy")]
  [CalaisTypeDescription("The type of an extracted company's bankruptcy mention")]
  public class CalaisBankruptcy : CalaisCustomTypeBase, ICalaisBankruptcy
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/BonusSharesIssuance")]
  [CalaisTypeDescription("The type of an extracted bonus shares issuance")]
  public class CalaisBonusSharesIssuance : CalaisCustomTypeBase, ICalaisBonusSharesIssuance
  {
	public string BonusSharesRatio
	{
		get
		{
			 return base.BonusSharesRatio; 
		}

		set
		{
			 base.BonusSharesRatio = value; 
		}
	}
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/BusinessRelation")]
  [CalaisTypeDescription("The type of an extracted business relation mentioned between multiple companies")]
  public class CalaisBusinessRelation : CalaisCustomTypeBase, ICalaisBusinessRelation
  {
	public string BusinessRelationType
	{
		get
		{
			 return base.BusinessRelationType; 
		}

		set
		{
			 base.BusinessRelationType = value; 
		}
	}
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Buybacks")]
  [CalaisTypeDescription("The type of an extracted buyback event")]
  public class CalaisBuybacks : CalaisCustomTypeBase, ICalaisBuybacks
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyAffiliates")]
  [CalaisTypeDescription("The type of an extracted parent-subsidiary relation between two companies")]
  public class CalaisCompanyAffiliates : CalaisCustomTypeBase, ICalaisCompanyAffiliates
  {
	public string AffiliateRelationType
	{
		get
		{
			 return base.AffiliateRelationType; 
		}

		set
		{
			 base.AffiliateRelationType = value; 
		}
	}
	public ICalaisCompany Company_Affiliate
	{
		get
		{
			 return base.Company_Affiliate; 
		}

		set
		{
			 base.Company_Affiliate = value; 
		}
	}
	public ICalaisCompany Company_Parent
	{
		get
		{
			 return base.Company_Parent; 
		}

		set
		{
			 base.Company_Parent = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyCompetitor")]
  [CalaisTypeDescription("The type of an extracted competition relation between two companies")]
  public class CalaisCompanyCompetitor : CalaisCustomTypeBase, ICalaisCompanyCompetitor
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyCustomer")]
  [CalaisTypeDescription("The type of an extracted supplier-customer relation between two companies")]
  public class CalaisCompanyCustomer : CalaisCustomTypeBase, ICalaisCompanyCustomer
  {
	public ICalaisCompany Company_Customer
	{
		get
		{
			 return base.Company_Customer; 
		}

		set
		{
			 base.Company_Customer = value; 
		}
	}
	public ICalaisCompany Company_ProvIder
	{
		get
		{
			 return base.Company_ProvIder; 
		}

		set
		{
			 base.Company_ProvIder = value; 
		}
	}
	public ICalaisOrganization Organization_Customer
	{
		get
		{
			 return base.Organization_Customer; 
		}

		set
		{
			 base.Organization_Customer = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyEarningsAnnouncement")]
  [CalaisTypeDescription("The type of an extracted earnings announcement event made by companies")]
  public class CalaisCompanyEarningsAnnouncement : CalaisCustomTypeBase, ICalaisCompanyEarningsAnnouncement
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string FinancialMetric
	{
		get
		{
			 return base.FinancialMetric; 
		}

		set
		{
			 base.FinancialMetric = value; 
		}
	}
	public string Quarter
	{
		get
		{
			 return base.Quarter; 
		}

		set
		{
			 base.Quarter = value; 
		}
	}
	public string Year
	{
		get
		{
			 return base.Year; 
		}

		set
		{
			 base.Year = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyEarningsGuidance")]
  [CalaisTypeDescription("The type of an extracted earnings forecast/guidance event made by companies")]
  public class CalaisCompanyEarningsGuIdance : CalaisCustomTypeBase, ICalaisCompanyEarningsGuIdance
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string FinancialMetric
	{
		get
		{
			 return base.FinancialMetric; 
		}

		set
		{
			 base.FinancialMetric = value; 
		}
	}
	public string FinancialTrend
	{
		get
		{
			 return base.FinancialTrend; 
		}

		set
		{
			 base.FinancialTrend = value; 
		}
	}
	public string Quarter
	{
		get
		{
			 return base.Quarter; 
		}

		set
		{
			 base.Quarter = value; 
		}
	}
	public string Year
	{
		get
		{
			 return base.Year; 
		}

		set
		{
			 base.Year = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyEmployeesNumber")]
  [CalaisTypeDescription("The type of an extracted mention of the number of employees in a company")]
  public class CalaisCompanyEmployeesNumber : CalaisCustomTypeBase, ICalaisCompanyEmployeesNumber
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Employeesnumber
	{
		get
		{
			 return base.Employeesnumber; 
		}

		set
		{
			 base.Employeesnumber = value; 
		}
	}
	public ICalaisCustomLocation Location
	{
		get
		{
			 return base.Location; 
		}

		set
		{
			 base.Location = value; 
		}
	}
	public string Unit
	{
		get
		{
			 return base.Unit; 
		}

		set
		{
			 base.Unit = value; 
		}
	}
  }

  [CalaisTypeDescription("Custom composite type for [Location]")]
  [CalaisType("http://calaisdotnet.codeplex.com/types/CalaisCustomLocation")]
  public class CalaisCustomLocation : ICalaisCustomLocation
  {
	public string Name { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyExpansion")]
  [CalaisTypeDescription("The type of an extracted event of company expansion")]
  public class CalaisCompanyExpansion : CalaisCustomTypeBase, ICalaisCompanyExpansion
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string ExpansionType
	{
		get
		{
			 return base.ExpansionType; 
		}

		set
		{
			 base.ExpansionType = value; 
		}
	}
	public ICalaisCustomLocation Location
	{
		get
		{
			 return base.Location; 
		}

		set
		{
			 base.Location = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyFounded")]
  [CalaisTypeDescription("The type of an extracted mention of the founding year of a company")]
  public class CalaisCompanyFounded : CalaisCustomTypeBase, ICalaisCompanyFounded
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Year
	{
		get
		{
			 return base.Year; 
		}

		set
		{
			 base.Year = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyInvestment")]
  [CalaisTypeDescription("The type of an extracted company investment/funding mention")]
  public class CalaisCompanyInvestment : CalaisCustomTypeBase, ICalaisCompanyInvestment
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public ICalaisCompany Company_Investor
	{
		get
		{
			 return base.Company_Investor; 
		}

		set
		{
			 base.Company_Investor = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyLegalIssues")]
  [CalaisTypeDescription("The type of an extracted legal issue involving a company")]
  public class CalaisCompanyLegalIssues : CalaisCustomTypeBase, ICalaisCompanyLegalIssues
  {
	public ICalaisCompany Company_Plaintiff
	{
		get
		{
			 return base.Company_Plaintiff; 
		}

		set
		{
			 base.Company_Plaintiff = value; 
		}
	}
	public ICalaisCompany Company_Sued
	{
		get
		{
			 return base.Company_Sued; 
		}

		set
		{
			 base.Company_Sued = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string LawsuitClass
	{
		get
		{
			 return base.LawsuitClass; 
		}

		set
		{
			 base.LawsuitClass = value; 
		}
	}
	public ICalaisPerson Person_Plaintiff
	{
		get
		{
			 return base.Person_Plaintiff; 
		}

		set
		{
			 base.Person_Plaintiff = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
	public string SuedDescription
	{
		get
		{
			 return base.SuedDescription; 
		}

		set
		{
			 base.SuedDescription = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyLocation")]
  [CalaisTypeDescription("The type of an extracted information about company's location")]
  public class CalaisCompanyLocation : CalaisCustomTypeBase, ICalaisCompanyLocation
  {
	public ICalaisCity City
	{
		get
		{
			 return base.City; 
		}

		set
		{
			 base.City = value; 
		}
	}
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string CompanyLocationType
	{
		get
		{
			 return base.CompanyLocationType; 
		}

		set
		{
			 base.CompanyLocationType = value; 
		}
	}
	public ICalaisCountry Country
	{
		get
		{
			 return base.Country; 
		}

		set
		{
			 base.Country = value; 
		}
	}
	public ICalaisProvinceOrState ProvinceOrState
	{
		get
		{
			 return base.ProvinceOrState; 
		}

		set
		{
			 base.ProvinceOrState = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyMeeting")]
  [CalaisTypeDescription("The type of an extracted announcement of meetings (e.g., AGM, EGM) initiated by companies")]
  public class CalaisCompanyMeeting : CalaisCustomTypeBase, ICalaisCompanyMeeting
  {
	public ICalaisCity City
	{
		get
		{
			 return base.City; 
		}

		set
		{
			 base.City = value; 
		}
	}
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string CompanyMeetingType
	{
		get
		{
			 return base.CompanyMeetingType; 
		}

		set
		{
			 base.CompanyMeetingType = value; 
		}
	}
	public ICalaisCountry Country
	{
		get
		{
			 return base.Country; 
		}

		set
		{
			 base.Country = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisFacility Facility
	{
		get
		{
			 return base.Facility; 
		}

		set
		{
			 base.Facility = value; 
		}
	}
	public ICalaisProvinceOrState ProvinceOrState
	{
		get
		{
			 return base.ProvinceOrState; 
		}

		set
		{
			 base.ProvinceOrState = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyNameChange")]
  [CalaisTypeDescription("The type of an extracted event of company changing its name")]
  public class CalaisCompanyNameChange : CalaisCustomTypeBase, ICalaisCompanyNameChange
  {
	public ICalaisCompany Company_FormerName
	{
		get
		{
			 return base.Company_FormerName; 
		}

		set
		{
			 base.Company_FormerName = value; 
		}
	}
	public ICalaisCompany Company_NewName
	{
		get
		{
			 return base.Company_NewName; 
		}

		set
		{
			 base.Company_NewName = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
	public string StockExchange
	{
		get
		{
			 return base.StockExchange; 
		}

		set
		{
			 base.StockExchange = value; 
		}
	}
	public string Ticker
	{
		get
		{
			 return base.Ticker; 
		}

		set
		{
			 base.Ticker = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyProduct")]
  [CalaisTypeDescription("The type of an extracted mention of a product offered by a company")]
  public class CalaisCompanyProduct : CalaisCustomTypeBase, ICalaisCompanyProduct
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public ICalaisProduct Product
	{
		get
		{
			 return base.Product; 
		}

		set
		{
			 base.Product = value; 
		}
	}
	public string ProductType
	{
		get
		{
			 return base.ProductType; 
		}

		set
		{
			 base.ProductType = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyReorganization")]
  [CalaisTypeDescription("The type of an extracted mention of reorganization/restructuring of companies")]
  public class CalaisCompanyReOrganization : CalaisCustomTypeBase, ICalaisCompanyReOrganization
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyTechnology")]
  [CalaisTypeDescription("The type of an extracted mention of a technology offered by a company")]
  public class CalaisCompanyTechnology : CalaisCustomTypeBase, ICalaisCompanyTechnology
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public ICalaisTechnology Technology
	{
		get
		{
			 return base.Technology; 
		}

		set
		{
			 base.Technology = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CompanyTicker")]
  [CalaisTypeDescription("The type of an extracted mention of company's ticker and stock exchange where it's traded")]
  public class CalaisCompanyTicker : CalaisCustomTypeBase, ICalaisCompanyTicker
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string StockExchange
	{
		get
		{
			 return base.StockExchange; 
		}

		set
		{
			 base.StockExchange = value; 
		}
	}
	public string Ticker
	{
		get
		{
			 return base.Ticker; 
		}

		set
		{
			 base.Ticker = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/ConferenceCall")]
  [CalaisTypeDescription("The type of an extracted announcement of a conference call initiated by companies to review financial results")]
  public class CalaisConferenceCall : CalaisCustomTypeBase, ICalaisConferenceCall
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string ConferencecallType
	{
		get
		{
			 return base.ConferencecallType; 
		}

		set
		{
			 base.ConferencecallType = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Quarter
	{
		get
		{
			 return base.Quarter; 
		}

		set
		{
			 base.Quarter = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Conviction")]
  [CalaisTypeDescription("The type of an extracted conviction event")]
  public class CalaisConviction : CalaisCustomTypeBase, ICalaisConviction
  {
	public string Charge
	{
		get
		{
			 return base.Charge; 
		}

		set
		{
			 base.Charge = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string OtherCharges
	{
		get
		{
			 return base.OtherCharges; 
		}

		set
		{
			 base.OtherCharges = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/CreditRating")]
  [CalaisTypeDescription("The type of an extracted mention of rating the credit of companies or organizations")]
  public class CalaisCreditRating : CalaisCustomTypeBase, ICalaisCreditRating
  {
	public ICalaisCompany Company_Rated
	{
		get
		{
			 return base.Company_Rated; 
		}

		set
		{
			 base.Company_Rated = value; 
		}
	}
	public ICalaisCompany Company_Source
	{
		get
		{
			 return base.Company_Source; 
		}

		set
		{
			 base.Company_Source = value; 
		}
	}
	public string FinancialTrend
	{
		get
		{
			 return base.FinancialTrend; 
		}

		set
		{
			 base.FinancialTrend = value; 
		}
	}
	public ICalaisOrganization Organization_Rated
	{
		get
		{
			 return base.Organization_Rated; 
		}

		set
		{
			 base.Organization_Rated = value; 
		}
	}
	public string Rank_New
	{
		get
		{
			 return base.Rank_New; 
		}

		set
		{
			 base.Rank_New = value; 
		}
	}
	public string Rank_Old
	{
		get
		{
			 return base.Rank_Old; 
		}

		set
		{
			 base.Rank_Old = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/EmploymentChange")]
  [CalaisTypeDescription("The type of an extracted mention of change of employment relative to people, companies or organizations")]
  public class CalaisEmploymentChange : CalaisCustomTypeBase, ICalaisEmploymentChange
  {
	public string ChangeType
	{
		get
		{
			 return base.ChangeType; 
		}

		set
		{
			 base.ChangeType = value; 
		}
	}
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisOrganization Organization
	{
		get
		{
			 return base.Organization; 
		}

		set
		{
			 base.Organization = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
	public ICalaisPosition Position
	{
		get
		{
			 return base.Position; 
		}

		set
		{
			 base.Position = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/EmploymentRelation")]
  [CalaisTypeDescription("The type of an extracted relation between an employer person to an employee person")]
  public class CalaisEmploymentRelation : CalaisCustomTypeBase, ICalaisEmploymentRelation
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisPerson Person_Employee
	{
		get
		{
			 return base.Person_Employee; 
		}

		set
		{
			 base.Person_Employee = value; 
		}
	}
	public ICalaisPerson Person_Employer
	{
		get
		{
			 return base.Person_Employer; 
		}

		set
		{
			 base.Person_Employer = value; 
		}
	}
	public ICalaisPosition Position
	{
		get
		{
			 return base.Position; 
		}

		set
		{
			 base.Position = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/EnvironmentalIssue")]
  [CalaisTypeDescription("The type of an extracted mention of various environmental issues")]
  public class CalaisEnvironmentalIssue : CalaisCustomTypeBase, ICalaisEnvironmentalIssue
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Environmentalissue
	{
		get
		{
			 return base.Environmentalissue; 
		}

		set
		{
			 base.Environmentalissue = value; 
		}
	}
	public ICalaisCustomLocation Location
	{
		get
		{
			 return base.Location; 
		}

		set
		{
			 base.Location = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Extinction")]
  [CalaisTypeDescription("The type of an extracted mention of species extinction")]
  public class CalaisExtinction : CalaisCustomTypeBase, ICalaisExtinction
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisCustomLocation Location
	{
		get
		{
			 return base.Location; 
		}

		set
		{
			 base.Location = value; 
		}
	}
	public string Species
	{
		get
		{
			 return base.Species; 
		}

		set
		{
			 base.Species = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/FDAPhase")]
  [CalaisTypeDescription("The type of an extracted mention of a drug's phase in the US FDA's approval process")]
  public class CalaisFDAPhase : CalaisCustomTypeBase, ICalaisFDAPhase
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Fdastage
	{
		get
		{
			 return base.Fdastage; 
		}

		set
		{
			 base.Fdastage = value; 
		}
	}
	public ICalaisProduct Product
	{
		get
		{
			 return base.Product; 
		}

		set
		{
			 base.Product = value; 
		}
	}
	public string ProductType
	{
		get
		{
			 return base.ProductType; 
		}

		set
		{
			 base.ProductType = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/FamilyRelation")]
  [CalaisTypeDescription("The type of an extracted mention of family relation such as husband-wife, parent-child, etc.")]
  public class CalaisFamilyRelation : CalaisCustomTypeBase, ICalaisFamilyRelation
  {
	public string FamilyRelationType
	{
		get
		{
			 return base.FamilyRelationType; 
		}

		set
		{
			 base.FamilyRelationType = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
	public ICalaisPerson Person_Relative
	{
		get
		{
			 return base.Person_Relative; 
		}

		set
		{
			 base.Person_Relative = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/GenericRelations")]
  [CalaisTypeDescription("The type of an extracted relation of the form: Subject - Verb / Predicate - Object")]
  public class CalaisGenericRelations : CalaisCustomTypeBase, ICalaisGenericRelations
  {
	public ICalaisCustomRelationObject RelationObject
	{
		get
		{
			 return base.RelationObject; 
		}

		set
		{
			 base.RelationObject = value; 
		}
	}
	public ICalaisCustomRelationSubject RelationSubject
	{
		get
		{
			 return base.RelationSubject; 
		}

		set
		{
			 base.RelationSubject = value; 
		}
	}
	public string Verb
	{
		get
		{
			 return base.Verb; 
		}

		set
		{
			 base.Verb = value; 
		}
	}
  }

  [CalaisTypeDescription("Custom composite type for [RelationObject]")]
  [CalaisType("http://calaisdotnet.codeplex.com/types/CalaisCustomRelationObject")]
  public class CalaisCustomRelationObject : ICalaisCustomRelationObject
  {
	public string Name { get; set; }
	public string Nationality { get; set; }
	public string OrganizationType { get; set; }
	public string PersonType { get; set; }
	public string ProductType { get; set; }
  }

  [CalaisTypeDescription("Custom composite type for [RelationSubject]")]
  [CalaisType("http://calaisdotnet.codeplex.com/types/CalaisCustomRelationSubject")]
  public class CalaisCustomRelationSubject : ICalaisCustomRelationSubject
  {
	public string Name { get; set; }
	public string Nationality { get; set; }
	public string OrganizationType { get; set; }
	public string PersonType { get; set; }
	public string ProductType { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/IPO")]
  [CalaisTypeDescription("The type of an extracted mention of company's initial public offering")]
  public class CalaisIPO : CalaisCustomTypeBase, ICalaisIPO
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Indictment")]
  [CalaisTypeDescription("The type of an extracted indictment event")]
  public class CalaisIndictment : CalaisCustomTypeBase, ICalaisIndictment
  {
	public string Charge
	{
		get
		{
			 return base.Charge; 
		}

		set
		{
			 base.Charge = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string OtherCharges
	{
		get
		{
			 return base.OtherCharges; 
		}

		set
		{
			 base.OtherCharges = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/JointVenture")]
  [CalaisTypeDescription("The type of an extracted joint venture event between companies")]
  public class CalaisJointVenture : CalaisCustomTypeBase, ICalaisJointVenture
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public ICalaisCompany Company_NewName
	{
		get
		{
			 return base.Company_NewName; 
		}

		set
		{
			 base.Company_NewName = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/ManMadeDisaster")]
  [CalaisTypeDescription("The type of an extracted mention of a specific man-made disaster")]
  public class CalaisManMadeDisaster : CalaisCustomTypeBase, ICalaisManMadeDisaster
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisFacility Facility
	{
		get
		{
			 return base.Facility; 
		}

		set
		{
			 base.Facility = value; 
		}
	}
	public ICalaisCustomLocation Location
	{
		get
		{
			 return base.Location; 
		}

		set
		{
			 base.Location = value; 
		}
	}
	public string ManmadeDisaster
	{
		get
		{
			 return base.ManmadeDisaster; 
		}

		set
		{
			 base.ManmadeDisaster = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Merger")]
  [CalaisTypeDescription("The type of an extracted merger event between companies")]
  public class CalaisMerger : CalaisCustomTypeBase, ICalaisMerger
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/MovieRelease")]
  [CalaisTypeDescription("The type of an extracted mention of a movie release")]
  public class CalaisMovieRelease : CalaisCustomTypeBase, ICalaisMovieRelease
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisMovie Movie
	{
		get
		{
			 return base.Movie; 
		}

		set
		{
			 base.Movie = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/MusicAlbumRelease")]
  [CalaisTypeDescription("The type of an extracted mention of a music album release")]
  public class CalaisMusicAlbumRelease : CalaisCustomTypeBase, ICalaisMusicAlbumRelease
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisMusicAlbum MusicAlbum
	{
		get
		{
			 return base.MusicAlbum; 
		}

		set
		{
			 base.MusicAlbum = value; 
		}
	}
	public ICalaisMusicGroup MusicGroup_Performer
	{
		get
		{
			 return base.MusicGroup_Performer; 
		}

		set
		{
			 base.MusicGroup_Performer = value; 
		}
	}
	public ICalaisPerson Person_Performer
	{
		get
		{
			 return base.Person_Performer; 
		}

		set
		{
			 base.Person_Performer = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/NaturalDisaster")]
  [CalaisTypeDescription("The type of an extracted mention of a specific natural disaster")]
  public class CalaisNaturalDisaster : CalaisCustomTypeBase, ICalaisNaturalDisaster
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisCustomLocation Location
	{
		get
		{
			 return base.Location; 
		}

		set
		{
			 base.Location = value; 
		}
	}
	public string NaturalDisaster
	{
		get
		{
			 return base.NaturalDisaster; 
		}

		set
		{
			 base.NaturalDisaster = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PatentFiling")]
  [CalaisTypeDescription("The type of an extracted mention of patent filing by companies or organizations")]
  public class CalaisPatentFiling : CalaisCustomTypeBase, ICalaisPatentFiling
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisOrganization Organization
	{
		get
		{
			 return base.Organization; 
		}

		set
		{
			 base.Organization = value; 
		}
	}
	public string PatentDescription
	{
		get
		{
			 return base.PatentDescription; 
		}

		set
		{
			 base.PatentDescription = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PatentIssuance")]
  [CalaisTypeDescription("The type of an extracted mention of patent issuance granted to companies or organizations")]
  public class CalaisPatentIssuance : CalaisCustomTypeBase, ICalaisPatentIssuance
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisOrganization Organization
	{
		get
		{
			 return base.Organization; 
		}

		set
		{
			 base.Organization = value; 
		}
	}
	public string PatentDescription
	{
		get
		{
			 return base.PatentDescription; 
		}

		set
		{
			 base.PatentDescription = value; 
		}
	}
	public string Patentnumber
	{
		get
		{
			 return base.Patentnumber; 
		}

		set
		{
			 base.Patentnumber = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PersonAttributes")]
  [CalaisTypeDescription("The type of an extracted personal information, such as age, gender, birthdate and birthplace")]
  public class CalaisPersonAttributes : CalaisCustomTypeBase, ICalaisPersonAttributes
  {
	public string Age
	{
		get
		{
			 return base.Age; 
		}

		set
		{
			 base.Age = value; 
		}
	}
	public string BirthDate
	{
		get
		{
			 return base.BirthDate; 
		}

		set
		{
			 base.BirthDate = value; 
		}
	}
	public string Birthplace
	{
		get
		{
			 return base.Birthplace; 
		}

		set
		{
			 base.Birthplace = value; 
		}
	}
	public string Gender
	{
		get
		{
			 return base.Gender; 
		}

		set
		{
			 base.Gender = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PersonCareer")]
  [CalaisTypeDescription("The type of an extracted mention of person's position and the associated company, organization or place")]
  public class CalaisPersonCareer : CalaisCustomTypeBase, ICalaisPersonCareer
  {
	public string CareerType
	{
		get
		{
			 return base.CareerType; 
		}

		set
		{
			 base.CareerType = value; 
		}
	}
	public ICalaisCity City
	{
		get
		{
			 return base.City; 
		}

		set
		{
			 base.City = value; 
		}
	}
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public ICalaisCountry Country
	{
		get
		{
			 return base.Country; 
		}

		set
		{
			 base.Country = value; 
		}
	}
	public ICalaisOrganization Organization
	{
		get
		{
			 return base.Organization; 
		}

		set
		{
			 base.Organization = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
	public ICalaisPosition Position
	{
		get
		{
			 return base.Position; 
		}

		set
		{
			 base.Position = value; 
		}
	}
	public ICalaisProvinceOrState ProvinceOrState
	{
		get
		{
			 return base.ProvinceOrState; 
		}

		set
		{
			 base.ProvinceOrState = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PersonCommunication")]
  [CalaisTypeDescription("The type of an extracted communication (meeting, phone call, etc.) between people or groups of people")]
  public class CalaisPersonCommunication : CalaisCustomTypeBase, ICalaisPersonCommunication
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisFacility Facility
	{
		get
		{
			 return base.Facility; 
		}

		set
		{
			 base.Facility = value; 
		}
	}
	public ICalaisCustomOrganizationorCompany OrganizationorCompany
	{
		get
		{
			 return base.OrganizationorCompany; 
		}

		set
		{
			 base.OrganizationorCompany = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
	public string PersonDescription
	{
		get
		{
			 return base.PersonDescription; 
		}

		set
		{
			 base.PersonDescription = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisTypeDescription("Custom composite type for [OrganizationorCompany]")]
  [CalaisType("http://calaisdotnet.codeplex.com/types/CalaisCustomOrganizationorCompany")]
  public class CalaisCustomOrganizationorCompany : ICalaisCustomOrganizationorCompany
  {
	public string Name { get; set; }
	public string Nationality { get; set; }
	public string OrganizationType { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PersonEducation")]
  [CalaisTypeDescription("The type of an extracted mention of person's education and academic degree")]
  public class CalaisPersonEducation : CalaisCustomTypeBase, ICalaisPersonEducation
  {
	public string Certification
	{
		get
		{
			 return base.Certification; 
		}

		set
		{
			 base.Certification = value; 
		}
	}
	public string Degree
	{
		get
		{
			 return base.Degree; 
		}

		set
		{
			 base.Degree = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
	public string SchoolorOrganization
	{
		get
		{
			 return base.SchoolorOrganization; 
		}

		set
		{
			 base.SchoolorOrganization = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PersonEmailAddress")]
  [CalaisTypeDescription("The tyhpe of an extracted mention of a person's email address")]
  public class CalaisPersonEmailAddress : CalaisCustomTypeBase, ICalaisPersonEmailAddress
  {
	public string Emailaddress
	{
		get
		{
			 return base.Emailaddress; 
		}

		set
		{
			 base.Emailaddress = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PersonRelation")]
  [CalaisTypeDescription("The type of an extracted mention of various relationships between people, such as Military, Romantic, etc.")]
  public class CalaisPersonRelation : CalaisCustomTypeBase, ICalaisPersonRelation
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
	public string PersonRelationType
	{
		get
		{
			 return base.PersonRelationType; 
		}

		set
		{
			 base.PersonRelationType = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/PersonTravel")]
  [CalaisTypeDescription("The type of an extracted mention of a person's travel from one place to another")]
  public class CalaisPersonTravel : CalaisCustomTypeBase, ICalaisPersonTravel
  {
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisCustomLocationdestination Locationdestination
	{
		get
		{
			 return base.Locationdestination; 
		}

		set
		{
			 base.Locationdestination = value; 
		}
	}
	public ICalaisCustomLocationorigin Locationorigin
	{
		get
		{
			 return base.Locationorigin; 
		}

		set
		{
			 base.Locationorigin = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisTypeDescription("Custom composite type for [Locationdestination]")]
  [CalaisType("http://calaisdotnet.codeplex.com/types/CalaisCustomLocationdestination")]
  public class CalaisCustomLocationdestination : ICalaisCustomLocationdestination
  {
	public string Name { get; set; }
  }

  [CalaisTypeDescription("Custom composite type for [Locationorigin]")]
  [CalaisType("http://calaisdotnet.codeplex.com/types/CalaisCustomLocationorigin")]
  public class CalaisCustomLocationorigin : ICalaisCustomLocationorigin
  {
	public string Name { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/ProductRecall")]
  [CalaisTypeDescription("The type of an extracted announcement of company recalling its products")]
  public class CalaisProductRecall : CalaisCustomTypeBase, ICalaisProductRecall
  {
	public ICalaisCompany Company_Distributor
	{
		get
		{
			 return base.Company_Distributor; 
		}

		set
		{
			 base.Company_Distributor = value; 
		}
	}
	public ICalaisCompany Company_Recalling
	{
		get
		{
			 return base.Company_Recalling; 
		}

		set
		{
			 base.Company_Recalling = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisProduct Product
	{
		get
		{
			 return base.Product; 
		}

		set
		{
			 base.Product = value; 
		}
	}
	public string ProductType
	{
		get
		{
			 return base.ProductType; 
		}

		set
		{
			 base.ProductType = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/ProductRelease")]
  [CalaisTypeDescription("The type of an extracted announcement of company releasing new products")]
  public class CalaisProductRelease : CalaisCustomTypeBase, ICalaisProductRelease
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public ICalaisProduct Product
	{
		get
		{
			 return base.Product; 
		}

		set
		{
			 base.Product = value; 
		}
	}
	public string ProductType
	{
		get
		{
			 return base.ProductType; 
		}

		set
		{
			 base.ProductType = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Quotation")]
  [CalaisTypeDescription("The type of an extracted quotation and its speaker")]
  public class CalaisQuotation : CalaisCustomTypeBase, ICalaisQuotation
  {
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
	public string Quote
	{
		get
		{
			 return base.Quote; 
		}

		set
		{
			 base.Quote = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/SecondaryIssuance")]
  [CalaisTypeDescription("The type of an extracted mention of secondary stock issuance")]
  public class CalaisSecondaryIssuance : CalaisCustomTypeBase, ICalaisSecondaryIssuance
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string Status
	{
		get
		{
			 return base.Status; 
		}

		set
		{
			 base.Status = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/StockSplit")]
  [CalaisTypeDescription("The type of an extracted Stock Split relation mention - stock splits announced by companies")]
  public class CalaisStockSplit : CalaisCustomTypeBase, ICalaisStockSplit
  {
	public ICalaisCompany Company
	{
		get
		{
			 return base.Company; 
		}

		set
		{
			 base.Company = value; 
		}
	}
	public string StockSplitRatio
	{
		get
		{
			 return base.StockSplitRatio; 
		}

		set
		{
			 base.StockSplitRatio = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/em/r/Trial")]
  [CalaisTypeDescription("The type of an extracted trial event")]
  public class CalaisTrial : CalaisCustomTypeBase, ICalaisTrial
  {
	public string Charge
	{
		get
		{
			 return base.Charge; 
		}

		set
		{
			 base.Charge = value; 
		}
	}
	public string Date
	{
		get
		{
			 return base.Date; 
		}

		set
		{
			 base.Date = value; 
		}
	}
	public string DateString
	{
		get
		{
			 return base.DateString; 
		}

		set
		{
			 base.DateString = value; 
		}
	}
	public string OtherCharges
	{
		get
		{
			 return base.OtherCharges; 
		}

		set
		{
			 base.OtherCharges = value; 
		}
	}
	public ICalaisPerson Person
	{
		get
		{
			 return base.Person; 
		}

		set
		{
			 base.Person = value; 
		}
	}
  }

  [CalaisType("http://s.opencalais.com/1/type/er/Company")]
  [CalaisTypeDescription("The type of a disambiguated company name")]
  public class CalaisCompanyDisambiguated : ICalaisCompanyDisambiguated
  {
	public ICalaisDocInfo DocId { get; set; }
	public string Name { get; set; }
	public string Score { get; set; }
	public ICalaisCustomSubject Subject { get; set; }
	public string Ticker { get; set; }
  }

  [CalaisTypeDescription("Custom composite type for [Subject]")]
  [CalaisType("http://calaisdotnet.codeplex.com/types/CalaisCustomSubject")]
  public class CalaisCustomSubject : ICalaisCustomSubject
  {
	public string Name { get; set; }
	public string Nationality { get; set; }
	public string OrganizationType { get; set; }
	public string PersonType { get; set; }
	public string ProductType { get; set; }
	public ICalaisCompany Company_Acquirer { get; set; }
	public ICalaisCompany Company_Beingacquired { get; set; }
	public string Date { get; set; }
	public string DateString { get; set; }
	public string Status { get; set; }
	public ICalaisCompany Company { get; set; }
	public ICalaisCompany Company_Rated { get; set; }
	public ICalaisCompany Company_Source { get; set; }
	public string FinancialMetric { get; set; }
	public ICalaisPerson Person_Source { get; set; }
	public string Quarter { get; set; }
	public string Year { get; set; }
	public string FinancialTrend { get; set; }
	public string Price_New { get; set; }
	public string Price_Old { get; set; }
	public string Rank_New { get; set; }
	public string Rank_Old { get; set; }
	public string Charge { get; set; }
	public string OtherCharges { get; set; }
	public ICalaisPerson Person { get; set; }
	public string BonusSharesRatio { get; set; }
	public string BusinessRelationType { get; set; }
	public string AffiliateRelationType { get; set; }
	public ICalaisCompany Company_Affiliate { get; set; }
	public ICalaisCompany Company_Parent { get; set; }
	public ICalaisCompany Company_Customer { get; set; }
	public ICalaisCompany Company_ProvIder { get; set; }
	public ICalaisOrganization Organization_Customer { get; set; }
	public string Employeesnumber { get; set; }
	public ICalaisCustomLocation Location { get; set; }
	public string Unit { get; set; }
	public string ExpansionType { get; set; }
	public ICalaisCompany Company_Investor { get; set; }
	public ICalaisCompany Company_Plaintiff { get; set; }
	public ICalaisCompany Company_Sued { get; set; }
	public string LawsuitClass { get; set; }
	public ICalaisPerson Person_Plaintiff { get; set; }
	public string SuedDescription { get; set; }
	public ICalaisCity City { get; set; }
	public string CompanyLocationType { get; set; }
	public ICalaisCountry Country { get; set; }
	public ICalaisProvinceOrState ProvinceOrState { get; set; }
	public string CompanyMeetingType { get; set; }
	public ICalaisFacility Facility { get; set; }
	public ICalaisCompany Company_FormerName { get; set; }
	public ICalaisCompany Company_NewName { get; set; }
	public string StockExchange { get; set; }
	public string Ticker { get; set; }
	public ICalaisProduct Product { get; set; }
	public ICalaisTechnology Technology { get; set; }
	public string ConferencecallType { get; set; }
	public ICalaisOrganization Organization_Rated { get; set; }
	public string ChangeType { get; set; }
	public ICalaisOrganization Organization { get; set; }
	public ICalaisPosition Position { get; set; }
	public ICalaisPerson Person_Employee { get; set; }
	public ICalaisPerson Person_Employer { get; set; }
	public string Environmentalissue { get; set; }
	public string Species { get; set; }
	public string Fdastage { get; set; }
	public string FamilyRelationType { get; set; }
	public ICalaisPerson Person_Relative { get; set; }
	public ICalaisCustomRelationObject RelationObject { get; set; }
	public ICalaisCustomRelationSubject RelationSubject { get; set; }
	public string Verb { get; set; }
	public string ManmadeDisaster { get; set; }
	public ICalaisMovie Movie { get; set; }
	public ICalaisMusicAlbum MusicAlbum { get; set; }
	public ICalaisMusicGroup MusicGroup_Performer { get; set; }
	public ICalaisPerson Person_Performer { get; set; }
	public string NaturalDisaster { get; set; }
	public string PatentDescription { get; set; }
	public string Patentnumber { get; set; }
	public string Age { get; set; }
	public string BirthDate { get; set; }
	public string Birthplace { get; set; }
	public string Gender { get; set; }
	public string CareerType { get; set; }
	public ICalaisCustomOrganizationorCompany OrganizationorCompany { get; set; }
	public string PersonDescription { get; set; }
	public string Certification { get; set; }
	public string Degree { get; set; }
	public string SchoolorOrganization { get; set; }
	public string Emailaddress { get; set; }
	public string PersonRelationType { get; set; }
	public ICalaisCustomLocationdestination Locationdestination { get; set; }
	public ICalaisCustomLocationorigin Locationorigin { get; set; }
	public ICalaisCompany Company_Distributor { get; set; }
	public ICalaisCompany Company_Recalling { get; set; }
	public string Quote { get; set; }
	public string StockSplitRatio { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/er/Geo/City")]
  [CalaisTypeDescription("The type of a disambiguated city name")]
  public class CalaisCityDisambiguated : ICalaisCityDisambiguated
  {
	public string ContainedByCountry { get; set; }
	public string ContainedByState { get; set; }
	public ICalaisDocInfo DocId { get; set; }
	public string Latitude { get; set; }
	public string Longitude { get; set; }
	public string Name { get; set; }
	public string ShortName { get; set; }
	public ICalaisCustomSubject Subject { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/er/Geo/Country")]
  [CalaisTypeDescription("The type of a disambiguated country name")]
  public class CalaisCountryDisambiguated : ICalaisCountryDisambiguated
  {
	public string ContainedByCountry { get; set; }
	public ICalaisDocInfo DocId { get; set; }
	public string Latitude { get; set; }
	public string Longitude { get; set; }
	public string Name { get; set; }
	public string ShortName { get; set; }
	public ICalaisCustomSubject Subject { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/er/Geo/ProvinceOrState")]
  [CalaisTypeDescription("The type of a disambiguated province/state name")]
  public class CalaisProvinceOrStateDisambiguated : ICalaisProvinceOrStateDisambiguated
  {
	public string ContainedByCountry { get; set; }
	public string ContainedByState { get; set; }
	public ICalaisDocInfo DocId { get; set; }
	public string Latitude { get; set; }
	public string Longitude { get; set; }
	public string Name { get; set; }
	public string ShortName { get; set; }
	public ICalaisCustomSubject Subject { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/er/Product/Electronics")]
  [CalaisTypeDescription("The type of a disambiguated product name of type Electronics")]
  public class CalaisElectronicsDisambiguated : ICalaisElectronicsDisambiguated
  {
	public ICalaisDocInfo DocId { get; set; }
	public string Name { get; set; }
	public string Score { get; set; }
	public ICalaisCustomSubject Subject { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/lid/DefaultLangId")]
  [CalaisTypeDescription("The type of the identified language for the current document")]
  public class CalaisDefaultLangId : ICalaisDefaultLangId
  {
	public ICalaisDocInfo DocId { get; set; }
	public string Lang { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/sys/DocInfoMeta")]
  [CalaisTypeDescription("The type of the node that presents meta-info generated by Calais")]
  public class CalaisDocInfoMeta : ICalaisDocInfoMeta
  {
	public string ContentType { get; set; }
	public ICalaisDocInfo DocId { get; set; }
	public string Emver { get; set; }
	public string LangIdver { get; set; }
	public string Language { get; set; }
	public ICalaisMessage Message { get; set; }
	public string Processingver { get; set; }
	public string Signature { get; set; }
	public string SubmissionDate { get; set; }
	public string Submittercode { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/sys/Message")]
  [CalaisTypeDescription("The type of the node that contains error messages")]
  public class CalaisMessage : ICalaisMessage
  {
	public string Messagecode { get; set; }
	public string Text { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/sys/InstanceInfo")]
  [CalaisTypeDescription("The type of the node that presents details about individual instances of Calais types")]
  public class CalaisInstanceInfo : ICalaisInstanceInfo
  {
	public string Detection { get; set; }
	public ICalaisDocInfo DocId { get; set; }
	public string Exact { get; set; }
	public string Length { get; set; }
	public string Offset { get; set; }
	public string Prefix { get; set; }
	public ICalaisCustomSubject Subject { get; set; }
	public string Suffix { get; set; }
  }

  [CalaisType("http://s.opencalais.com/1/type/sys/RelevanceInfo")]
  [CalaisTypeDescription("The type of the node that presents information about relevance ranking assiged to Calais entities")]
  public class CalaisRelevanceInfo : ICalaisRelevanceInfo
  {
	public ICalaisDocInfo DocId { get; set; }
	public string Relevance { get; set; }
	public ICalaisCustomSubject Subject { get; set; }
  }

  public class CalaisCustomTypeBase : ICalaisCustomLocation, ICalaisCustomRelationObject, ICalaisCustomRelationSubject, ICalaisCustomOrganizationorCompany, ICalaisCustomLocationdestination, ICalaisCustomLocationorigin, ICalaisCustomSubject
  {
	public string Name { get; set; }
	public string Nationality { get; set; }
	public string OrganizationType { get; set; }
	public string PersonType { get; set; }
	public string ProductType { get; set; }
	public ICalaisCompany Company_Acquirer { get; set; }
	public ICalaisCompany Company_Beingacquired { get; set; }
	public string Date { get; set; }
	public string DateString { get; set; }
	public string Status { get; set; }
	public ICalaisCompany Company { get; set; }
	public ICalaisCompany Company_Rated { get; set; }
	public ICalaisCompany Company_Source { get; set; }
	public string FinancialMetric { get; set; }
	public ICalaisPerson Person_Source { get; set; }
	public string Quarter { get; set; }
	public string Year { get; set; }
	public string FinancialTrend { get; set; }
	public string Price_New { get; set; }
	public string Price_Old { get; set; }
	public string Rank_New { get; set; }
	public string Rank_Old { get; set; }
	public string Charge { get; set; }
	public string OtherCharges { get; set; }
	public ICalaisPerson Person { get; set; }
	public string BonusSharesRatio { get; set; }
	public string BusinessRelationType { get; set; }
	public string AffiliateRelationType { get; set; }
	public ICalaisCompany Company_Affiliate { get; set; }
	public ICalaisCompany Company_Parent { get; set; }
	public ICalaisCompany Company_Customer { get; set; }
	public ICalaisCompany Company_ProvIder { get; set; }
	public ICalaisOrganization Organization_Customer { get; set; }
	public string Employeesnumber { get; set; }
	public ICalaisCustomLocation Location { get; set; }
	public string Unit { get; set; }
	public string ExpansionType { get; set; }
	public ICalaisCompany Company_Investor { get; set; }
	public ICalaisCompany Company_Plaintiff { get; set; }
	public ICalaisCompany Company_Sued { get; set; }
	public string LawsuitClass { get; set; }
	public ICalaisPerson Person_Plaintiff { get; set; }
	public string SuedDescription { get; set; }
	public ICalaisCity City { get; set; }
	public string CompanyLocationType { get; set; }
	public ICalaisCountry Country { get; set; }
	public ICalaisProvinceOrState ProvinceOrState { get; set; }
	public string CompanyMeetingType { get; set; }
	public ICalaisFacility Facility { get; set; }
	public ICalaisCompany Company_FormerName { get; set; }
	public ICalaisCompany Company_NewName { get; set; }
	public string StockExchange { get; set; }
	public string Ticker { get; set; }
	public ICalaisProduct Product { get; set; }
	public ICalaisTechnology Technology { get; set; }
	public string ConferencecallType { get; set; }
	public ICalaisOrganization Organization_Rated { get; set; }
	public string ChangeType { get; set; }
	public ICalaisOrganization Organization { get; set; }
	public ICalaisPosition Position { get; set; }
	public ICalaisPerson Person_Employee { get; set; }
	public ICalaisPerson Person_Employer { get; set; }
	public string Environmentalissue { get; set; }
	public string Species { get; set; }
	public string Fdastage { get; set; }
	public string FamilyRelationType { get; set; }
	public ICalaisPerson Person_Relative { get; set; }
	public ICalaisCustomRelationObject RelationObject { get; set; }
	public ICalaisCustomRelationSubject RelationSubject { get; set; }
	public string Verb { get; set; }
	public string ManmadeDisaster { get; set; }
	public ICalaisMovie Movie { get; set; }
	public ICalaisMusicAlbum MusicAlbum { get; set; }
	public ICalaisMusicGroup MusicGroup_Performer { get; set; }
	public ICalaisPerson Person_Performer { get; set; }
	public string NaturalDisaster { get; set; }
	public string PatentDescription { get; set; }
	public string Patentnumber { get; set; }
	public string Age { get; set; }
	public string BirthDate { get; set; }
	public string Birthplace { get; set; }
	public string Gender { get; set; }
	public string CareerType { get; set; }
	public ICalaisCustomOrganizationorCompany OrganizationorCompany { get; set; }
	public string PersonDescription { get; set; }
	public string Certification { get; set; }
	public string Degree { get; set; }
	public string SchoolorOrganization { get; set; }
	public string Emailaddress { get; set; }
	public string PersonRelationType { get; set; }
	public ICalaisCustomLocationdestination Locationdestination { get; set; }
	public ICalaisCustomLocationorigin Locationorigin { get; set; }
	public ICalaisCompany Company_Distributor { get; set; }
	public ICalaisCompany Company_Recalling { get; set; }
	public string Quote { get; set; }
	public string StockSplitRatio { get; set; }
  }

}
